Assert that ImageDiffUtil succeeds in reading the golden image I've seen mysterious NPEs in that class, adding a better error message. Test: N/A Bug: N/A Change-Id: Id52bdd6170a451bf430283ba9e499d025bee6453
diff --git a/adt-ui/src/test/java/com/android/tools/adtui/imagediff/ImageDiffUtil.java b/adt-ui/src/test/java/com/android/tools/adtui/imagediff/ImageDiffUtil.java index 5a348ff..ac82774 100644 --- a/adt-ui/src/test/java/com/android/tools/adtui/imagediff/ImageDiffUtil.java +++ b/adt-ui/src/test/java/com/android/tools/adtui/imagediff/ImageDiffUtil.java
@@ -188,8 +188,8 @@ return AdtUiUtils.DEFAULT_FONT; } } - public static void assertImageSimilar(File goldenFile, - BufferedImage actual, + public static void assertImageSimilar(@NotNull File goldenFile, + @NotNull BufferedImage actual, double maxPercentDifferent) throws IOException { if (!goldenFile.exists()) { Files.createParentDirs(goldenFile); @@ -197,11 +197,15 @@ fail("File did not exist, created here:" + goldenFile); } - assertImageSimilar(goldenFile.getName(), ImageIO.read(goldenFile), actual, maxPercentDifferent); + BufferedImage goldenImage = ImageIO.read(goldenFile); + assert goldenImage != null : "Failed to read image from " + goldenFile.getAbsolutePath(); + assertImageSimilar(goldenFile.getName(), goldenImage, actual, maxPercentDifferent); } - public static void assertImageSimilar(String imageName, BufferedImage goldenImage, - BufferedImage image, double maxPercentDifferent) throws IOException { + public static void assertImageSimilar(@NotNull String imageName, + @NotNull BufferedImage goldenImage, + @NotNull BufferedImage image, + double maxPercentDifferent) throws IOException { assertEquals("Only TYPE_INT_ARGB image types are supported", TYPE_INT_ARGB, image.getType()); if (goldenImage.getType() != TYPE_INT_ARGB) { diff --git a/android/testSrc/com/android/tools/idea/rendering/NamespacedRenderTest.kt b/android/testSrc/com/android/tools/idea/rendering/NamespacedRenderTest.kt index 3a28610..c7fd4f3 100644 --- a/android/testSrc/com/android/tools/idea/rendering/NamespacedRenderTest.kt +++ b/android/testSrc/com/android/tools/idea/rendering/NamespacedRenderTest.kt
@@ -63,7 +63,7 @@ goldenImage: String ) { val task = RenderTestUtil.createRenderTask(myModules.appModule, layout, configuration) - val result = task.render().get().renderedImage.copy + val result = task.render().get().renderedImage.copy!! ImageDiffUtil.assertImageSimilar( File(getTestDataPath() + goldenImage),